package com.dzienniczekwedkarza.activities;



import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;

import com.actionbarsherlock.app.SherlockActivity;
import com.dzienniczekwedkarza.R;

/**
 * @author Rafał Wysogląd
 * 
 */

public class SplashActivity extends SherlockActivity {
	
	private boolean mIsBackButtonPressed; // naciśnięty przycisk buttonu z powrotem
    private static final int SPLASH_DURATION = 2000; // 2 sekundy
	
	
	@Override
	public void onCreate(Bundle savedInstanceState) {
	          super.onCreate(savedInstanceState);
	          setContentView(R.layout.activity_splash);
	          
	        /*Handler umożliwia wysylanie i przetwarzanie wiadomości. 
	          Każdy pojedynczy Handler jest połączony z wątkiem (tym, w którym zostaje stworzony) i w nim zostaje przetwarzane wiadomości, które w końcu trafiają do naszego Handlera.*/
	          
	          Handler handler = new Handler();
	          
	          //postDelayed() -  dodaje Runnable do kolejki z opóżnieniem
	          //Runnable() -  Reprezentuje komendy, które mogą byś wykonane. Często używany do uruchomienia kodu w innym wątku.
	          //uruchom wątek po 4 sekundach, aby uruchomić  główny ekran
	          
	          handler.postDelayed(new Runnable() {
	   
	              public void run() {
	                     
	                  //upewniamy się, że zamykamy ekran powitalny, tak więc użytkownik nie wróci do niego gdy naciśnie przycisk z powrotem
	                  finish();
	                   
	                  if (!mIsBackButtonPressed) {
	                      //start ekranu głównego jeśli przycisk zostanie wciśnięty, z powrotem już nie
	                      Intent intent = new Intent(SplashActivity.this, MainMenuActivity.class);
	                      SplashActivity.this.startActivity(intent);
	                 }
	                   
	              }
	   
	          }, SPLASH_DURATION); //czas w milisekundach (1 second = 1000 milliseconds) do metody run() gdzie zostanie wywołana
	   
	      }
	   
	      @Override
	     public void onBackPressed() {
	   
	          //ustawienie flagi na true, tak aby dalej aktywność nie rozpoczynała się
	          mIsBackButtonPressed = true;
	          super.onBackPressed();
	   
	      }
	  }
	          
